/*先来先服务算法*/

/*
	FCFS主函数
	参数：
		arr原磁道序列数组，head磁头位置
	算法描述：
		它根据进程请求访问磁盘的先后次序进行调度，计算出平均访问磁道数
*/
function FCFS(arr, head){
	var arrProc = [];//用数组记录访问过程
	var arrSeNum = [];//记录每一次的寻道长度
	var aver = 0;//记录平均寻道长度
	var now = head;//记录当前的磁道所在的位置，初始值为head
	var num = arr.length;//记录数组的数量

	for(var i=0; i<num; i++){
		arrSeNum[i] = Math.abs(arr[i] - now);
		now = arr[i];
		arrProc[i] = now;
		aver += arrSeNum[i];
	}

	aver /= num;
	// console.log("arrSeNum=="+aver+"\n"+arrProc+"\n"+arrSeNum);

	//最后返回一个，里面包含算法结果的数据结构
	var obj = {
		average : aver,
		arrProc : arrProc,
		arrSeNum : arrSeNum
	}

	return obj;
}